<?php
class Myuser extends CI_Model {

        private $useringroup = array();              //Группы в которых состоит пользователь
        private $user_id=0;                           //пользователя
        private $user_name;                         //имя пользователя
        
        
        function __construct()
        {
                // Call the Model constructor
                parent::__construct();
                $this->load->database();
        }

        public function is_user_login(){
                if (!$this->session->userdata('user_id')) {
                	log_message('debug',"\r\nmyuser.php is_user_login()\r\n session->userdata(user_id)=".$this->session->userdata('user_id')."\r\n ");
                	log_message('debug','session->userdata(user_name)='.$this->session->userdata('user_name')."\r\n");
                	header("Location: http://".$this->input->server('HTTP_HOST').'/'.$this->config->item('index_page').'/userlogin/'); 
                	exit;
                }else{
                                $this->user_id=$this->session->userdata('user_id');
                                $this->user_name=$this->session->userdata('user_name');
                                $this->useringroup=$this->getUIG($this->user_id);
                                log_message('debug','\r\n myuser->user_id='.$this->user_id);
                                log_message('debug','\r\n myuser->user_name='.$this->user_name);
                                
                                //log_message('debug','\r\n myuser->useringroup='.var_dump($this->useringroup));
                }
        }
        
        public function getuseringroup(){
                return $this->useringroup;
        }
        
        //========================================================================
        //  Разлогинивает текущего пользователя
        //=========================================================================
        public function logout(){
                $this->session->sess_destroy();
                header("Location: http://".$_SERVER['HTTP_HOST'].'/'.$this->config->item('index_page').'/userlogin/');
        }
        
        public function get_user_at_name($username,$pass){
                $query = "SELECT * from users where user_name= ? AND deleted=0 AND block=0";
                if($res=$this->db->query($query, $username)){
                        $row=$res->first_row('array');
                        //echo var_dump($row);
                        //Проверяем найден ли пользователь с именем $name и такой ли у него хеш пароля
                        if($row && (crypt($pass,"qawsedrftg") == $row['user_pwd'])){
                                return $row;
                        } else{
                                //Неверный пароль или имя пользователя
                                $user['id']=0;
                                $user['message']='Ошибка: Неверный пароль или имя пользователя';
                                //show_error('Ошибка: Неверный пароль или имя пользователя');
                                return $user;
                        }
                }else{
                        $user['id']=0;
                        $user['message']='Ошибка подключения к базе данных';
                        show_error('Ошибка связи с базой данных' , 501  );
                        return $user;
                }
        }
        
        public function getUIG($user_id){
                $query="SELECT * from useringroup where user_id= ? and deleted=0";
                if($res=$this->db->query($query, $user_id)){
                        if($res->num_rows() == 0){$useringroup=false;}
                        $i=0;
                        // записываем найденные group_id в массив useringoup
                        foreach($res->result_array() as $row){
                                $useringroup[$i]=$row['group_id'];
                                $i++;
                        }
                        return $useringroup;
                }else{
                        return false;
                }
        }
/*
        function get_last_ten_entries()
        {
                $query = $this->db->get('entries', 10);
                return $query->result();
        }

        function insert_entry()
        {
                $this->title   = $_POST['title']; // please read the below note
                $this->content = $_POST['content'];
                $this->date    = time();

                $this->db->insert('entries', $this);
        }

        function update_entry()
        {
                $this->title   = $_POST['title'];
                $this->content = $_POST['content'];
                $this->date    = time();

                $this->db->update('entries', $this, array('id' => $_POST['id']));
        }
*/
}
